package com.nmc.service.manager;


import java.util.List;

import com.nmc.service.dao.ZonesDao;
import com.nmc.service.model.Zones;


/**
 * Business Service Interface to handle communication between web and
 * persistence layer.
 */
public interface ZonesManager extends GenericManager<Zones, Long> {
    /**
     * Convenience method for testing - allows you to mock the DAO and set it on an interface.
     * @param zonesDao the ZonesDao implementation to use
     */
    void setZonesDao(ZonesDao zonesDao);

    /**
     * Retrieves a zones by zonesId.  An exception is thrown if zones not found
     *
     * @param zonesId the identifier for the zones
     * @return Zones
     */
    Zones getZones(String zonesId);

    

    /**
     * Retrieves a list of all zoness.
     * @return List
     */
    List<Zones> getZoness();

    /**
     * Saves a zones's information.
     *
     * @param zones the zones's information
     * @throws ZonesExistsException thrown when zones already exists
     * @return zones the updated zones object
     */
    Zones saveZones(Zones zones) ;

    /**
     * Removes a zones from the database by their zonesId
     *
     * @param zonesId the zones's id
     */
    void removeZones(String zonesId);

    
}
